A shared communication medium is used in many communication networks to enable the exchange of data between nodes. In order for the nodes to make reliable and predictable use of the shared medium, they utilize a multiple access technique and obey a set of medium access control (MAC) rules, which govern how the medium is accessed and shared.
One multiple access technique used to access a shared medium in a communication network is carrier sense multiple access (CSMA). CSMA is used in both wired networks such as IEEE 802.3 and wireless networks such as IEEE 802.11. A node operating in a CSMA system attempts to avoid transmission collisions with other users of the shared medium by listening for the presence of a carrier (i.e. a transmission) on the shared medium before sending any data. Therefore, a node does not transmit on the shared medium when other nodes are using it.
In a wired CSMA network, a transmitted signal can be sensed almost simultaneously by all of the nodes sharing the communication medium. Therefore, if a collision does occur (e.g. due to two nodes starting transmission at the same time), then this can be detected by the transmitters and they can back-off from re-transmission for a random period of time according to the MAC protocol. This is known as CSMA with collision detection (CSMA/CD).
However, for wireless networks, this is not the case due to the limited propagation range of the radio signals. For example, consider three wireless nodes A, B, and C. Node A is in propagation range of node B but not node C, and similarly node C is in propagation range of node B, but not node A. As node A and node C are not within range of each other, they are unable to sense signals that the other is transmitting. When node A wishes to transmit to node B it listens on the shared communication medium (the radio frequency in question) to determine if the carrier is free (in accordance with the CSMA protocol). If no other transmissions are detected, then the transmission from node A to node B is started. Subsequently, if node C wishes to transmit to node B, it also listens on the carrier to sense for transmissions. Node C does not detect the transmission from node A, as it is out of its range. Therefore, node C starts transmitting to node B as well. As node B is in range of both of nodes A and C, these two transmissions interfere, and hence a collision occurs.
The problem of wireless nodes suffering from interference and collisions due to not being able to detect other users of the medium because the other user is too far away is known as the “hidden node problem”.
To reduce this problem, previous wireless communication protocols such as IEEE 802.11 have used a technique called CSMA with collision avoidance (CSMA/CA). CSMA/CA is used to reduce the likelihood of collisions due to several wireless nodes attempting to transmit immediately following the carrier becoming free after a transmission. If the channel is sensed as busy by a node wanting to transmit data then the transmission is deferred for a random interval after the carrier becomes idle. Whilst this can reduce the probability of collisions on the carrier, it cannot completely eliminate collisions caused by the hidden node problem. An example of a CSMA/CA scheme is the distributed coordination function (DCF) used in IEEE 802.11 wireless networks.
CSMA/CA can further be supplemented by the exchange of request to send (RTS) and clear to send (CTS) packets to alert nearby nodes to the impending transmission of a frame. For example, a node initiates a data sending process by sending an RTS message. A destination node replies with a CTS message. Any other node receiving the RTS or CTS frame is arranged not to send data for a time which is specified in the RTS and CTS frames. This therefore reduces the frequency of frame collisions. However, using the RTS/CTS process introduces a significant overhead in terms of delay and extra message passing, which consequently reduces throughput. As a result, the RTS/CTS mechanism is often switched off in applications using IEEE 802.11 protocols.
A further problem called the “exposed node problem” also exists in CSMA wireless networks. In this case, consider four nodes A, B, C and D. Node B is in range of node A and C only, and node C is in range of node B and D only. If node B is transmitting to node A, then node C senses the carrier, hears the transmission from node B and determines that it is not able to transmit to node D. However, this is an incorrect conclusion, as a transmission to node D would only cause interference in the region between node B and C, where no nodes are receiving data. The exposed node problem therefore reduces the spatial reuse of the shared medium, thereby reducing the overall performance of the network.
The embodiments described herein are not limited to implementations which solve any or all of the noted disadvantages.